package top.aoyudi.service;

import java.sql.SQLException;
import java.sql.Statement;
import java.util.List;
import java.util.Map;

public interface IMySqlService {
    /**
     * 获取表字段
     *
     * @param statement 向数据库发送SQL语句
     * @param tableName 表名
     * @return List
     */
    List<String> getTableFields(Statement statement, String tableName) throws SQLException;

    /**
     * 获取表数据
     *
     * @param statement 向数据库发送SQL语句
     * @param tableName 表名
     * @return Map
     */
    Map<Integer, List<String>> getTableData(Statement statement, String tableName) throws SQLException;

    /**
     * 创建数据库表
     *
     * @param statement 向数据库发送SQL语句
     * @param tableName 表名
     * @return boolean
     */
    boolean createTable(Statement statement, String tableName);

    /**
     * 往数据库中增加字段
     *
     * @param statement 向数据库发送SQL语句
     * @param tableName  表名
     * @param columnList 有字段名的List
     * @return boolean
     */
    boolean addColumn(Statement statement, String tableName, List<String> columnList);

    /**
     * 往数据库中插入数据
     * @param statement 向数据库发送SQL语句
     * @param tableName 表名
     * @param rowDataList 有数据的List
     * @return boolean
     */
    boolean insertInToTable(Statement statement, String tableName,List<String> columnList, List<String> rowDataList) throws SQLException;

}
